package com.jlf.core.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;

/**
 * 单一对象，简单的业务领域封装
 *
 * @author wujr
 * 2023/7/4
 * @version 1.0
 * 【变更历史】
 * [wujr 2023/7/4 1.0 新增]
 */
@Getter
@Setter
public abstract class _SimpleDO<T extends _SimpleDO<T>> extends _RawDO<T> implements Creator, Updater{
    @TableId
    protected Long id;

    @TableField(fill = FieldFill.INSERT)
    private String createAppCode;
    @TableField(fill = FieldFill.INSERT)
    private Long createProfileId;
    @TableField(fill = FieldFill.INSERT)
    private Long createIdentityId;
    @TableField(fill = FieldFill.INSERT)
    private String createUsername;
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateAppCode;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updateProfileId;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updateIdentityId;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateUsername;
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}
